import axios from "axios";
import qs from "qs";
import { Promise } from "core-js";

let instance = axios.create({
  baseURL: "http://localhost:2345", //统一路径
  timeout: 5000, //请求的一个时间
});

//然后添加请求拦截器
//interceptors。request()拦截器的一个方法

//前台向后台发送请求的一个方法
instance.interceptors.request.use(
  (config) => {
    //config前台向后台发送请求的信息
    console.log(config);
    if (config.method == "post") {
      config.data = qs.stringify({ ...config.data });
    } else {
      config.params = { ...config.data };
    }
    //加一个头部信息，告诉浏览器接收的是对象的数据类型
    config.headers["Content-Type"] = "application/X-www-form-urlencoded";
    return config;
  },
  //抛出错误处理
  (err) => {
    return Promise.reject(err);
  }
);

//也需要后台向前台发送请求的一个方法
instance.interceptors.response.use(
  //里面有执行成功和失败的函数
  //接口成功
  (response) => {

    // console.log(response.data.data);
    return response.data.data;
  },

  (error) => {
    //错误处理
    return Promise.reject(error);
  }
);

export default instance;
